class VeiculosController < ApplicationController
  # GET /veiculos
  # GET /veiculos.xml
  def index
   @veiculos = Veiculo.paginate :page => params[:page], :per_page => 10    
  end

  # GET /veiculos/1
  # GET /veiculos/1.xml
  def show
  end

  # GET /veiculos/new
  # GET /veiculos/new.xml
  def new
    @veiculo = Veiculo.new
    @dutdetran = Dutdetran.new
    @ipem = Ipem.new
    @homologacao = Homologacao.new
  end

  # GET /veiculos/1/edit
  def edit
    @veiculo = Veiculo.find(params[:id])
    @dutdetran = Dutdetran.find_by_veiculo_id(@veiculo)
    @ipem = Ipem.find_by_veiculo_id(@veiculo)
    @homologacao = Homologacao.find_by_veiculo_id(@veiculo)

  end

  # POST /veiculos
  # POST /veiculos.xml
  def create
    @veiculo = Veiculo.new(params[:veiculo])
    @dutdetran = Dutdetran.new(params[:dutdetran])
    @ipem = Ipem.new(params[:ipem])
    @homologacao = Homologacao.new(params[:homologacao])
      Veiculo.transaction do
        @dutdetran.veiculo = @veiculo
        @ipem.veiculo = @veiculo
        @homologacao.veiculo = @veiculo
        @veiculo.save!
        @dutdetran.save!
        @ipem.save!
        @homologacao.save!
        flash[:notice] = 'Veiculo cadastrado com sucesso.'
        redirect_to :action => 'index'
      end
      rescue ActiveRecord:: RecordInvalid => e
        @dutdetran.valid?
        @ipem.valid?
        @homologacao.valid?
        render :action => "new" 
  end

  # PUT /veiculos/1
  # PUT /veiculos/1.xml
  def update
    @veiculo = Veiculo.find(params[:id])
    respond_to do |format|
      if @veiculo.update_attributes(params[:veiculo])
        flash[:notice] = 'Veiculo editado com sucesso.'
        redirect_to :action => 'index'
      else
        render :action => "edit"
      end
    end
  end

  # DELETE /veiculos/1
  # DELETE /veiculos/1.xml
  def destroy
    @veiculo = Veiculo.find(params[:id])
    @veiculo.destroy
    respond_to do |format|
      format.html { redirect_to(veiculos_url) }
      format.xml  { head :ok }
    end
  end
  
end
